package org.lgh.wallet.entity;

import org.lgh.wallet.common.OperateTypeEnum;
import org.lgh.wallet.common.TradeTypeEnum;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 钱包详情
 * @author wei-xhh
 * @date 2023-02-27
 */
public class WalletDetail {

    /**
     * 详情ID
     */
    private Long id;
    /**
     * 交易流水ID
     */
    private Long tradeId;
    /**
     * 交易时间
     */
    private Date tradeTime;
    /**
     * 交易类型
     */
    private TradeTypeEnum tradeType;
    /**
     * 操作类型
     */
    private OperateTypeEnum operateType;
    /**
     * 变动金额
     */
    private BigDecimal changeBalance;
    /**
     * 变动前的金额
     */
    private BigDecimal preBalance;
    /**
     * 变动后的金额
     */
    private BigDecimal backBalance;
    /**
     * 用户钱包ID
     */
    private Long walletId;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getTradeId() {
        return tradeId;
    }

    public void setTradeId(Long tradeId) {
        this.tradeId = tradeId;
    }

    public Date getTradeTime() {
        return tradeTime;
    }

    public void setTradeTime(Date tradeTime) {
        this.tradeTime = tradeTime;
    }

    public TradeTypeEnum getTradeType() {
        return tradeType;
    }

    public void setTradeType(TradeTypeEnum tradeType) {
        this.tradeType = tradeType;
    }

    public BigDecimal getPreBalance() {
        return preBalance;
    }

    public void setPreBalance(BigDecimal preBalance) {
        this.preBalance = preBalance;
    }

    public BigDecimal getBackBalance() {
        return backBalance;
    }

    public void setBackBalance(BigDecimal backBalance) {
        this.backBalance = backBalance;
    }

    public OperateTypeEnum getOperateType() {
        return operateType;
    }

    public void setOperateType(OperateTypeEnum operateType) {
        this.operateType = operateType;
    }

    public BigDecimal getChangeBalance() {
        return changeBalance;
    }

    public void setChangeBalance(BigDecimal changeBalance) {
        this.changeBalance = changeBalance;
    }

    public Long getWalletId() {
        return walletId;
    }

    public void setWalletId(Long walletId) {
        this.walletId = walletId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}
